Telegram Group & Telegram Channel
👣 “Cheating the Reaper in Go” от Miguel Young

В этой подробной статье автор показывает, как «обмануть» сборщик мусора Go и создать свой собственный arena-аллокатор на чистом Go, получая существенный прирост производительности.

📌 Что внутри:
- Краткий обзор GC Go: как используются pointer bits и shapes для точного сбора мусора.

- Реализация простого bump-аллокатора Arena, сводящего Alloc к смещению указателя.

- Бенчмарки: до 2×–4× ускорения при малых аллокациях и почти 7× для массивов из 64 элементов ( arena – 7370 MB/s vs new – 2865 MB/s )
mcyoung.xyz
.

- Оптимизация через sync.Pool и финализаторы для повторного использования и ускоренного обнуления памяти.

- Безопасный метод Reset() для мгновенной очистки арены без дорогостоящего выделения заново.

Заготовка примитивного Realloc(), позволяющая расширять последние аллокации «на месте».

Полный код, подробное объяснение и советы по дальнейшим оптимизациям — по ссылке:
https://mcyoung.xyz/2025/04/21/go-arenas/

@golang_books
Please open Telegram to view this post
VIEW IN TELEGRAM



tg-me.com/golang_books/969
Create:
Last Update:

👣 “Cheating the Reaper in Go” от Miguel Young

В этой подробной статье автор показывает, как «обмануть» сборщик мусора Go и создать свой собственный arena-аллокатор на чистом Go, получая существенный прирост производительности.

📌 Что внутри:
- Краткий обзор GC Go: как используются pointer bits и shapes для точного сбора мусора.

- Реализация простого bump-аллокатора Arena, сводящего Alloc к смещению указателя.

- Бенчмарки: до 2×–4× ускорения при малых аллокациях и почти 7× для массивов из 64 элементов ( arena – 7370 MB/s vs new – 2865 MB/s )
mcyoung.xyz
.

- Оптимизация через sync.Pool и финализаторы для повторного использования и ускоренного обнуления памяти.

- Безопасный метод Reset() для мгновенной очистки арены без дорогостоящего выделения заново.

Заготовка примитивного Realloc(), позволяющая расширять последние аллокации «на месте».

Полный код, подробное объяснение и советы по дальнейшим оптимизациям — по ссылке:
https://mcyoung.xyz/2025/04/21/go-arenas/

@golang_books

BY Golang Books




Share with your friend now:
tg-me.com/golang_books/969

View MORE
Open in Telegram


Golang Books Telegram | DID YOU KNOW?

Date: |

Telegram announces Search Filters

With the help of the Search Filters option, users can now filter search results by type. They can do that by using the new tabs: Media, Links, Files and others. Searches can be done based on the particular time period like by typing in the date or even “Yesterday”. If users type in the name of a person, group, channel or bot, an extra filter will be applied to the searches.

A project of our size needs at least a few hundred million dollars per year to keep going,” Mr. Durov wrote in his public channel on Telegram late last year. “While doing that, we will remain independent and stay true to our values, redefining how a tech company should operate.

Golang Books from id


Telegram Golang Books
FROM USA